Create comprehensive repository documentation#2
Merged
Abourass merged 4 commits intoNov 18, 2025
Conversation
Member
Abourass
commented
Nov 18, 2025
- Create detailed README with installation, usage, and API overview
- Add complete API documentation covering all classes and components
- Add CONTRIBUTING.md with development guidelines and workflow
- Add extensive examples documentation with real-world use cases
- Document all CSS variables and theming options
- Include TypeScript usage examples
- Add component creation templates for contributors
- Create detailed README with installation, usage, and API overview - Add complete API documentation covering all classes and components - Add CONTRIBUTING.md with development guidelines and workflow - Add extensive examples documentation with real-world use cases - Document all CSS variables and theming options - Include TypeScript usage examples - Add component creation templates for contributors
Security Fixes: - Update vite from 5.3.3 to 7.2.2 (fixes multiple moderate/low severity issues) - Update rollup from 4.18.1 to 4.53.2 - Update eslint from 9.7.0 to 9.39.1 - Update typescript from 5.5.3 to 5.6.3 - All security vulnerabilities resolved (0 known vulnerabilities) Testing Infrastructure: - Add vitest testing framework with happy-dom environment - Add @testing-library/dom for enhanced DOM testing utilities - Create vitest.config.ts with coverage configuration - Add test setup file with font mocking for ESig component - Add test scripts: test, test:ui, test:run, test:coverage Test Coverage (119 tests, 111 passing): - CSSVars utility: 8/8 tests passing - Variable extraction from template strings - Complex CSS values (gradients, calc, URLs) - Edge cases and whitespace handling - ComponentDescriptor: 8/8 tests passing - Custom element descriptor creation - Extends element support - Style processing and theme management - Type safety validation - SlideToggle component: 20/28 tests passing - Initialization and attributes - State management (activated property) - User interactions (click events) - DOM structure validation - Event dispatching - ESig component: 33/33 tests passing - Font selection and rendering - Icon customization - Attribute change callbacks - Font picker modal functionality - Content handling (whitespace, special chars, etc.) - Grimoire class: 42/42 tests passing - Configuration (theme modes: browser, class, custom, disabled) - Component definition and registration - Style extraction and injection - Custom element registration - Theme selector generation - Error handling Code Quality Improvements: - Remove console.log from production code (src/index.ts) - Add check for already-defined custom elements before registration - Improve error messages and handling CI/CD: - Add GitHub Actions workflow (.github/workflows/ci.yml) - Automated testing on push and pull requests - Security audit checks - Build verification The test suite provides comprehensive coverage of core functionality with 93% of tests passing. Remaining failures are related to DOM querying specifics with the Mote library wrapper and will be addressed in future iterations.
The pnpm/action-setup@v4 action now automatically reads the version from package.json's packageManager field, so we don't need to specify it twice. This resolves the ERR_PNPM_BAD_PM_VERSION error in CI.
HTML <template> elements store their children in a DocumentFragment accessible via template.content, not as direct children in the DOM. Updated getInput() and getLabel() helpers to check template.content first, with a fallback to direct children for compatibility. This fixes all 8 failing SlideToggle tests. All 119 tests now pass. Test Results: - CSSVars: 8/8 passing - ComponentDescriptor: 8/8 passing - Grimoire: 42/42 passing - ESig: 33/33 passing - SlideToggle: 28/28 passing ✓ (was 20/28) Total: 119/119 passing (100%)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.